In information technology, a backup, or the process of backing up, refers to the copying and archiving of computer data so it may be used to restore the original after a data loss event. Backups have two distinct purposes. The primary purpose is to recover data after its loss, be it by data deletion or corruption. Data loss can be a common experience of computer users. The secondary purpose of backups is to recover data from an earlier time, according to a user-defined data retention policy, typically configured within a backup application for how long copies of data are required.
Since a backup system contains at least one copy of all data worth saving, the data storage requirements can be significant. Organizing this storage space and managing the backup process can be a complicated undertaking. Nowadays, there are many different types of data storage devices that are useful for making backups. There are also many different ways in which these devices can be arranged to provide geographic redundancy, data security, and portability. Many different techniques have been developed to optimize the backup procedure. These include optimizations for dealing with open files and live data sources as well as compression, encryption, and de-duplication, among others.
In some situations, the backups may be scheduled and processed according to a service level objective (SLO), also referred to as a service level agreement (SLA), with a particular entity associated with the backup data. An SLO may specify that a particular backup session must be completed within a predetermined time period or backup window. Similarly, the processing resources for handling a backup session may also be specified in the SLO or allocated prior to starting the backup session. However, due to a variety of factors, such as internal operations of a primary storage system (also referred to as a source storage system) and/or a protection storage (also referred to as a target, backup, or secondary storage system), or network congestion, there is a risk that the pre-allocated backup resources may not be sufficient to complete the backup session within the specified time period. Particularly, during a backup session between the primary and protection storage systems, conventional approaches do not have a capability of dynamically adjusting backup resources to ensure the backup session is be completed within the specified time period.